let a1: any = 'ss';
// a1
let unusable: void = undefined;
// ts中有哪些类型boolean,number,string,数组，元组,any,void null,undefined,enum,never, symbol, Object
// 类型断言
let a2: any = 'sdsd'
let strLen: number = (a2 as string).length
let strLen2: number = (<string>a2).length
// function foo() {
//     // okay to capture 'a'
//     return a;
// }

// // 不能在'a'被声明前调用'foo'
// // 运行时应该抛出错误
// foo();
// let a;
function g() {
    let x = 100;
    var x = 100; // error: can't have both declarations of 'x'
}